之前曾經和大家講解java.util.Random,
也相信大家看完之後也對java.util.Random有基本認識。
雖然java.util.Random也產生隨機數,不過它的隨機數是基於它的種子(seed)。
換句話說,只要你知道它的種子(seed)就可以知道它產生的隨機數是什麼。
java.util.Random的種子(seed)是根據時間而設定,
假如我想把seed用其他東西取代,可以嗎?
其實是可以的!
只要在執行產生的隨機數之前設置特定的seed就可以。
Seed可以是整數也可以是小數
例子:
import java.util.Random;
public class RandomNumberCase{
	
	public static int randomNumber(){
		
		Random rand = new Random();
		int j = rand.nextInt(100);   
		return j;
		
	}
	
	public static int randomNumberWithSpecialSeed(){
		
		Random rand = new Random();
		rand.setSeed(5);
		int j = rand.nextInt(100);   
		return j;
		
	}
	
    public static void main(String[] args) {
    	
    	System.out.println("randomNumber: " + randomNumber());
    	System.out.println("randomNumberWithSpecialSeed: " + randomNumberWithSpecialSeed());
    }
}
大家從上面例子可以看到設置了特定seed的情況下,
每次重新運行相應的method – randomNumberWithSpecialSeed,都只是產生相同的隨機數。
如果有興趣想繼續了解和學習Java的話,歡迎訂閱及留意小弟的文章。